package com.bsj.travel.def.monitor.job;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @author yinhao
 * @version 1.0
 * @description 系统定时任务
 * @date 2024/1/23
 */
@Data
@TableName(value = "tab_job")
public class SysJob implements Serializable {
    private static final long serialVersionUID = -4111284475619656420L;

    /**
     * 任务序号
     */
    @TableId(value = "jobId", type= IdType.AUTO)
    private Long jobId;
    /**
     * 任务名称
     */
    @TableField("jobName")
    private String jobName;
    /**
     * 任务组名
     */
    @TableField("jobGroup")
    private String jobGroup;
    /**
     * 调用目标字符串
     */
    @TableField("invokeTarget")
    private String invokeTarget;
    /**
     * 执行表达式
     */
    @TableField("cronExpression")
    private String cronExpression;
    /**
     * 计划策略 0：默认 1:立即触发执行 2:触发一次执行 3:不触发立即执行
     */
    @TableField("misfirePolicy")
    private int misfirePolicy;
    /**
     * 是否并发执行 0:允许 1:禁止
     */
    @TableField("concurrent")
    private int concurrent;
    /**
     * 任务状态 0: 正常 1:暂停
     */
    @TableField("status")
    private int status;
    /**
     * 创建人
     */
    @TableField("userId")
    private Long userId;
    /**
     * 创建时间
     */
    @TableField("createTime")
    private Date createTime;
    /**
     * 更新时间
     */
    @TableField("updateTime")
    private Date updateTime;
    /**
     * 备注
     */
    @TableField("notes")
    private String notes;
}
